import request from '@/config/axios'

// 订单 VO
export interface BuiessOrderVO {
  id: number // 订单编号
  no: string // 订单流水号
  hospitalId: number // 医院编号
  hospitalName: string // 医院名称
  sectionId: number // 科室编号
  sectionName: string // 科室名称
  hopeTime: Date // 期望就诊时间
  type: number // 订单类型
  memberId: number // 用户编号
  memberRemark: string // 用户额外需求
  programId: number // 服务项目
  programName: string // 服务项目名称
  paitentId: number // 就诊人id
  paitentName: string // 就诊人姓名
  staffId: number // 服务人员id
  staffName: string // 服务人员姓名
  status: number // 订单状态
  remark: string // 商家备注
  payOrderId: number // 支付订单编号
  payStatus: boolean // 是否已支付：[0:未支付 1:已经支付过]
  payTime: Date // 订单支付时间
  payChannelCode: string // 支付成功的支付渠道
  finishTime: Date // 订单完成时间
  cancelTime: Date // 订单取消时间
  totalPrice: number // 商品原价（总），单位：分
  discountPrice: number // 订单优惠（总），单位：分
  payPrice: number // 应付金额（总），单位：分
  refundPrice: number // 退款金额，单位：分
  usePoint: number // 使用的积分
  pointPrice: number // 积分抵扣的金额
}

// 订单 API
export const BuiessOrderApi = {
  // 查询订单分页
  getBuiessOrderPage: async (params: any) => {
    return await request.get({ url: `/peizhen/buiess-order/page`, params })
  },

  // 查询订单详情
  getBuiessOrder: async (id: number) => {
    return await request.get({ url: `/peizhen/buiess-order/get?id=` + id })
  },

  // 新增订单
  createBuiessOrder: async (data: BuiessOrderVO) => {
    return await request.post({ url: `/peizhen/buiess-order/create`, data })
  },

  // 修改订单
  updateBuiessOrder: async (data: BuiessOrderVO) => {
    return await request.put({ url: `/peizhen/buiess-order/update`, data })
  },

  // 指派员工
  updateBuiessOrderStaff: async (data: BuiessOrderVO) => {
    return await request.put({ url: `/peizhen/buiess-order/updateStaff`, data })
  },


  // 删除订单
  deleteBuiessOrder: async (id: number) => {
    return await request.delete({ url: `/peizhen/buiess-order/delete?id=` + id })
  },

  // 导出订单 Excel
  exportBuiessOrder: async (params) => {
    return await request.download({ url: `/peizhen/buiess-order/export-excel`, params })
  }
}
